local csrf      = require("lapis.csrf")
local csrf_tool = {}

-- Genera un token con tiempo de expiración de 4 horas.
csrf_tool.generate_token = function(request)
	return csrf.generate_token(request, { expires = os.time() + 60*60*4 })
end

-- Valida si un token enviado desde un formulario es igual al generado y si no está expirado.
csrf_tool.validation_token = function(request)
	return csrf.assert_token(request, function(token)
		if os.time() > (token.expires or 0) then
			return nil, "Token expirado."
		else
			return true
		end
	end)
end

return csrf_tool